<?php

function ajax_register_account(){    
     global $language, $user;
     $check_email = db_query("SELECT * FROM users WHERE mail = :email", array(':email' => $_POST['txt_signup_email']))->fetchObject();
     if($check_email){
        $a_error = array (
            'text_error' => 'Email này đã tồn tại.' ,
            'class' => 'txt_signup_email' 
        );
        $list_error[] = $a_error;
        $json['status'] = FALSE;
        $json['list_error'] = $list_error;
     }
     else{
        require_once DRUPAL_ROOT . '/' . variable_get('password_inc', 'includes/password.inc');
        $data = (object) array(
			'name' => $_POST['txt_signup_email'],
			'pass' => user_hash_password($_POST['txt_signup_password']),
			'mail' => $_POST['txt_signup_email'],
			'init' => $_POST['txt_signup_email'],
			'status' => STATUS_LOCK,
			'timezone' => 'Asia/Ho_Chi_Minh'
        );
        $account = user_save($data);
        if($account){
            $_POST['uid'] = $account->uid;
            tbnd_save_user( $_POST );           
            $user = user_load($account->uid);
            user_login_finalize();
            $json['status'] = TRUE;
            /*-----------------------------action------------------------------*/
            $key_oauth = user_password(128);
            $data->key = $key_oauth;
            $data->fname = $_POST['txt_signup_fullname'];
            tbnd_save_oauth_user($_POST['txt_signup_email'] ,  $account->uid ,  $key_oauth , CREATE_ACCOUNT , NOT_ACTIVED , 0);              
            /*--------------------------------------------------------------*/
            /*-----------------send_email_active_user-----------------------*/
             // send mail
            $params['subject'] = 'Thông báo kích hoạt tài khoản tại thuebannhadat.vn';
            $params['body'] = theme('email_active_account', array('info' => $data));
            $send_mai = drupal_mail('tbnd_login', 'send-mail', $_POST['txt_signup_email'] , $language, $params);
            /*-----------------------------------------------------------------*/            
        }
        else{
            $json['status'] = FALSE;
            $json['list_error'] = $list_error;   
        }           
     }
     drupal_json_output( $json );
}

function ajax_login_account(){
    global $user;
    if(!user_is_logged_in()){       
        $account = db_query("SELECT * FROM users WHERE mail = :email", array(':email' => $_POST['txt_signin_email']))->fetchObject(); 
        if($account){
            if($account->status == 1){//tài khoản đã kích hoạt
                //đăng nhập thành công            
                $uid = user_authenticate($account->name, $_POST['txt_signin_password']);
                if ($uid) {
                    $user = user_load($uid);
                    user_login_finalize();     
                    $json['status'] = TRUE;
                }     
                else{
                     //đăng nhập không thành công
                    $a_error = array (
                         'text_error' => '' ,
                         'class' => 'txt_signin_email' 
                     );
                     $list_error[] = $a_error;
                     $a_error = array (
                         'text_error' => 'Email hoặc mật khẩu chưa chính xác !' ,
                         'class' => 'txt_signin_password' 
                     );
                     $list_error[] = $a_error;
                     $json['status'] = FALSE;
                     $json['list_error'] = $list_error;
                }
            }
            else{//tài khoản chưa kích hoạt
                 //đăng nhập không thành công
                    $a_error = array (
                         'text_error' => '' ,
                         'class' => 'txt_signin_email' 
                     );
                     $list_error[] = $a_error;
                     $a_error = array (
                         'text_error' => 'Tài khoản này chưa được kích hoạt' ,                         
                         'class' => 'txt_signin_password' 
                     );
                     $list_error[] = $a_error;
                     $json['status'] = FALSE;
                     $json['list_error'] = $list_error;
            }
        }
        else{
            //đăng nhập không thành công
           $a_error = array (
                'text_error' => '' ,
                'class' => 'txt_signin_email' 
            );
            $list_error[] = $a_error;
            $a_error = array (
                'text_error' => 'Email hoặc mật khẩu chưa chính xác !' ,
                'class' => 'txt_signin_password' 
            );
            $list_error[] = $a_error;
            $json['status'] = FALSE;
            $json['list_error'] = $list_error;
        }       
        drupal_json_output( $json );
    }
    else{
        drupal_goto();
    }
}

function ajax_recover_password(){
	global $user; 
    if(!user_is_logged_in()){   
		if(isset($_POST['txt_recover_email']) && $_POST['txt_recover_email']){
			$check_email = db_query("SELECT * FROM users WHERE mail = :email", array(':email' => $_POST['txt_recover_email']))->fetchObject();
			if(!$check_email){//kiem tra email khong ton tai
				$a_error = array (
					'text_error' => 'Email này không tồn tại trong hệ thống của thuebannhadat.vn' ,
					'class' => 'txt_recover_email' 
				);
				$list_error[] = $a_error;
				$json['status'] = FALSE;
				$json['list_error'] = $list_error;
			}
			else{//kiem tra email thanh cong
				/*-----create_password_radom-----------------------------------------------*/
				//$pass = substr(str_shuffle(str_repeat("0123456789abcdefghijklmnopqrstuvwxyz", 6)), 0, 6);
				/*-----create_password_radom-----------------------------------------------*/
				
				/*-----------------save_new_pass-------------------------------------------------*/
				//require_once DRUPAL_ROOT . '/' . variable_get('password_inc', 'includes/password.inc');
				
				/*-----------------------save_oauth------------------------------*/
				$key_oauth = user_password(128);
				$data->key = $key_oauth;
				$data->fname = $_POST['txt_recover_email'];
				$data->email = $_POST['txt_recover_email'];
				tbnd_save_oauth_user($_POST['txt_recover_email']  , 0 ,  $key_oauth , RECOVER_PASSWORD , NOT_ACTIVED , 0);        
				  
				/*-----------------------save_oauth------------------------------*/
				/*$item = array(
					'mail' => $_POST['txt_recover_email'] ,
					'pass' => user_hash_password( $pass ),
				);              
				drupal_write_record('users', $item, 'mail');
				$data = (object) array(
					'name' => $_POST['txt_recover_email'],
					'fname' => $_POST['txt_recover_email'] , 
					'pass' =>  $pass,
					'mail' => $_POST['txt_recover_email'],
					'init' => $_POST['txt_recover_email'],					
				);*/
				/*-----------------save_new_pass-------------------------------------------------*/
				
				 /*-----------------send_email_to_user-----------------------*/				 
				$params['subject'] = 'Thông báo đổi mật khẩu tại thuebannhadat.vn';
				$params['body'] = theme('email_recover_pass', array('info' => $data));
				$send_mai = drupal_mail('tbnd_login', 'send-mail', $_POST['txt_recover_email'] , $language, $params);
				/*-----------------------------------------------------------------*/         
				
				/*----------------------respone_status-------------------------*/
				$json['status'] = TRUE;
				/*----------------------respone_status-------------------------*/
			}
		}
		else{
			$json['status'] = FALSE;
			$a_error = array (
				'text_error' => 'Email này không tồn tại trong hệ thống của thuebannhadat.vn' ,
				'class' => 'txt_recover_email' 
			);
			$list_error[] = $a_error;
			$json['status'] = FALSE;
			$json['list_error'] = $list_error;
		}
    }
    else{
		$json['status'] = FALSE;
		$a_error = array (
			'text_error' => 'Bạn không có quyền truy cập' ,
			'class' => 'txt_recover_email' 
		);
		$list_error[] = $a_error;
		$json['status'] = FALSE;
		$json['list_error'] = $list_error;
	}
	drupal_json_output( $json );
}
